import request from "@/utils/request";

const DEVICE_BASE_URL = "/admin/device";

const DeviceAPI = {
  create(data) {
    return request({
      url: DEVICE_BASE_URL,
      method: "post",
      data,
    });
  },

  update(data) {
    return request({
      url: DEVICE_BASE_URL,
      method: "put",
      data,
    });
  },

  getPage(queryParams) {
    return request({
      url: `${DEVICE_BASE_URL}/page`,
      method: "get",
      params: queryParams,
    }).then((page) => {
      // 这里的 `page` 就是拦截器返回的 data.data（Page<Device>）
      return {
        list: page.records || [],
        total: page.total   || 0,
      };
    });
  },

  getById(id) {
    return request({
      url: `${DEVICE_BASE_URL}/${id}`,
      method: "get",
    });
  },

  deleteById(id) {
    return request({
      url: `${DEVICE_BASE_URL}/${id}`,
      method: "delete",
    });
  },

//   getDeviceData(id, startTime, endTime) {
//     return request({
//       url: `${DEVICE_BASE_URL}/${id}/data`,
//       method: "get",
//       params: { startTime, endTime },
//     });
//   },


 // 获取监控数据，返回真正的数组 data.data
  getDeviceData(id, startTime, endTime) {
    return request({
      url: `${DEVICE_BASE_URL}/${id}/data`,
      method: 'get',
      params: { startTime, endTime }
    }).then(res => {
      // 拦截器已返回 response.data.data，直接返回
      return Array.isArray(res) ? res : [];
    });
  }
};

export default DeviceAPI;
